In the application of vision guidance to robotic manufacturing, the vision system must often look for objects similar to a reference object which it has been taught to recognize. The object may differ from the reference by manufacturing tolerances and the vision recognition method must be tolerant of these differences. Accurate positioning of the part is expensive, so the value of the vision system increases as its tolerance for placement errors increase. The task of the vision system then becomes one of finding the object and informing the robot of its exact position so that the robot may perform its task of picking up the object, welding it, drilling holes in it, inserting parts into it, etc.
Often both position and orientation of the object must be determined which involves all six degrees of freedom of any physical object; three values of position and three values of angle. Knowing position and orientation of the object relative to the end of the robot arm enables the robot to position and orient a tool correctly relative to the object, which is the goal of vision guidance.
An object may have holes, corners, or other salient features which allow the vision guided robot system to readily determine the values of the six degrees of freedom of an object using techniques of the prior art. When such features are not present, the problem of determining the six degrees of freedom becomes difficult and may be impossible such as on objects possessing cylindrical, spherical or translational symmetry. Fortunately, the symmetry which eliminates the ability to determine orientation about a rotational axis of symmetry also usually eliminates the need to determine that orientation. Where asymmetry exists, orientation can be determined and the present invention describes a method for accomplishing this task.